C expressions occur as assignments, function arguments, and as part of other statements discussed in Chapter 6.
All C operators ΓÇö including the assignment '=' and logical operators ΓÇö can be mixed freely in expressions (with appropriate type conversion). This affords great flexibility in program style and structure, although care must be exercised to avoid excessively complex constructs which may lead to programming errors and obscure code.
The associativity of most operators is left to right, with the exception of the assignment operators.
The order of evaluation of operators within an expression is given in the following chart (adapted from Kernighan and Ritchie's*) although parentheses can be used to force the desired order of evaluation.